package com.usian.apis.admin;

import com.usian.model.admin.dtos.ChannelDto;
import com.usian.model.admin.pojos.AdChannel;
import com.usian.model.common.dtos.PageResponseResult;
import com.usian.model.common.dtos.ResponseResult;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiOperation;

/**
 * 约束 : 约束我的controller具备哪些能力
 */

@Api(value = "频道管理" ,tags = "channel", description = "频道管理API")
public interface AdChannelControllerApi {
    /**
     * 查询  分页  查询条件
     * @param dto 封装dto 传递对象
     * @return 通用返回对象
     */
    @ApiOperation(value = "查询频道信息",notes = "根据名称分页查询频道列表")
    @ApiImplicitParam(name = "dto",type ="ChannelDto",value = "查询名称")
    public PageResponseResult findPage(ChannelDto dto);

    /**
     * 添加
     * @param adChannel adChannel 传递对象
     * @return
     */
    public  ResponseResult save(AdChannel adChannel);

    /**
     *   根据 id修改

     * @param adChannel 封装的对象
     * @return
     */
    public  ResponseResult update( AdChannel adChannel);

    /**
     *  根据ID 删除
     * @param id  传递参数
     * @return
     */
    public ResponseResult del(Integer id);

    /**
     *  根据ID 查找对象
     * @param id 传递参数
     * @return
     */
   public ResponseResult findById(Integer id);


    /**
     * 查询所有频道
     * @return
     */
    public ResponseResult findAll();
}
